iT邦幫忙

1

(三) NAO(V5) NAO開發問題

  • 分享至 

  • xImage
  •  

一、NAO(V5)規格

硬體規格

首先我們看NAO的規格,完整規格

  • ATOM Z530 1.6 GHz CPU
  • 1 GB RAM
  • 2 GB Flash memory
  • 8 GB Micro SDHC

我們看到主要的硬體規格,V5因為是很舊的機器人,所以硬體在目前來看非常不夠,所以開發時盡量把處理資料的部分丟上後端。

軟體支援

軟體的支援很廣泛,linux、Mac、windows都有支援,下圖是支援開發的程式語言。
https://ithelp.ithome.com.tw/upload/images/20210105/20123336WMGk5vUpNH.png
(圖片來源:http://doc.aldebaran.com/2-1/_images/supported_language.png )

NAO支援非常多的開發方式,主要有Python、C++、Java、JavaScript,四種都可以在電腦上安裝SDK去控制機器人(JAVA要另外在NAO上裝JDK),而上一篇文章講到的choregraphe只支援Python及JavaScript,支援度是Python較高。因此我正常都是使用Python進行開發。

Naoqi OS完整資訊如下

Linux version 2.6.33.9-rt31-aldebaran-rt (portage@linux64-squeeze-benco-1) (gcc version 4.5.3 (Gentoo 4.5.3-r1 p1.0, pie-0.4.5) ) #1 SMP PREEMPT RT Thu Aug 27 21:42:34 CEST 2015

Naoqi是基於Gentoo開發雖然上面寫著是GCC 4.5.3,但在實體的機器人上OS的gcc、make、emerge等等的已經被刪除,我曾想找出辦法安裝回來,但礙於功力太淺,如果有人知道如何安裝麻煩請告訴我,我會很感激您。官網說是使用qibuild來安裝第三方函式庫,但可能因為疏於維護,我看著教學中在VM中下指令也不能用Developing a project for NAO ,因此先暫時放棄用C++寫這個方法,而JS我並不是很熟,所以使用Choregraphe以Python開發。

二、環境安裝

需要軟體

Putty(ssh)、Filezilla(FTP)

Python library安裝

首先我們透過ssh連線至NAO(windows可用putty)連線進入NAO
https://ithelp.ithome.com.tw/upload/images/20200403/20123336Ab35LBx3pZ.png
我們先回到連線畫面,首先登入的帳號密碼為nao,再來輸入su打密碼root進入最高權限(必須是root安裝,否則choregraphe有機會抓不到)。

login as: nao
Using keyboard-interactive authentication.
Password:(nao)
nao [0] ~ $ su
Password:(root)
root@nao [0] nao # 

Python版本為2.7.3

Python 2.7.3 (default, Apr 20 2015, 13:39:57)
[GCC 4.5.3] on linux2

目前這個版本已經很舊了,當我接觸到時為2018年,那時還可以用pip進行線上安裝,而現在Python2不再維護了,Python2.7.3內建的OpenSSL版本也已經過舊,使用pip安裝會出現錯誤

SNIMissingWarning: An HTTPS request has been made, but the SNI (Server Name Indication) extension to TLS is not available on this platform. This may cause the server to present an incorrect TLS certificate, which can cause validation failures. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings

所以要安裝只能從pypi下載 whl or tar.gz再透過pip或python安裝,並找到還支援python2.7的library版本(或是自己改寫為2.7版本)。
以安裝requests用來連接web api來說,需要一個個安裝下列的library版本(或更新的版本),安裝完就可以在Choregraphe中使用library了。

pip-19.3.1.tar.gz
certifi-2019.11.28-py2.py3-none-any.whl
chardet-3.0.4-py2.py3-none-any.whl
idna-2.8-py2.py3-none-any.whl
requests-2.22.0-py2.py3-none-any.whl
setuptools-42.0.2-py2.py3-none-any.whl
urllib3-1.25.7-py2.py3-none-any.whl

額外補充:
Java其實也可以在NAO中跑,可安裝JDK至NAO機器人中,並修改naoqi/preferences/autoload.ini 檔案使機器人開機使用Java操控,可安裝jdk-7u60-linux-i586或其他版本。


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言